package ar.com.sectorwine.dto;

import java.text.ParseException;

import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;

import ar.com.sectorwine.entities.InteresStock;
import ar.com.sectorwine.entities.Stock;
import excepciones.ExcepcionGeneral;

@Repository
public class ReporteDTOMapper {

	private static final Logger logger = LoggerFactory
			.getLogger(ReporteDTOMapper.class);


	public ReporteDTO obtenerReporteDeStock(Stock stock, List<InteresadoDTO> interesados) {

		ReporteDTO newDTOreporte = new ReporteDTO();

		newDTOreporte.setIdStock(stock.getId());
		newDTOreporte.setVariedad(stock.getVariedad());
		newDTOreporte.setColor(stock.getColor());

		newDTOreporte.setPh(stock.getPh());
		newDTOreporte.setNtu(stock.getNtu());

		newDTOreporte.setAcidez(stock.getAcidez());
		newDTOreporte.setAlcohol(stock.getAlcohol());
		newDTOreporte.setAzucar(stock.getAzucar());

		newDTOreporte.setCantidad(stock.getCantidad() + "");

		newDTOreporte.setEdad(stock.getEdad());
		newDTOreporte.setIdINV(stock.getIdINV());
		newDTOreporte.setPrecio(stock.getPrecio());

		SimpleDateFormat sdf = new SimpleDateFormat("dd-MM-yyyy");

		newDTOreporte.setFechaActual(sdf.format(new Date()));
		
		newDTOreporte.setVencimiento(sdf.format(stock.getVencimiento()));
		newDTOreporte.setFechaCreacionStock(sdf.format(stock
				.getFechaCreacionStock()));

		newDTOreporte.setCosecha(stock.getCosecha() + "");

		if (stock.getFechaVenta() == null) {
			newDTOreporte.setFechaVenta("");
		} else {
			newDTOreporte.setFechaVenta(sdf.format(stock.getFechaVenta()));
		}
		
		newDTOreporte.setInteresados(interesados);
		
		return newDTOreporte;
	}

}
